package com.cDesarrollador.service;

import java.util.List;

import org.springframework.transaction.annotation.Transactional;

import com.cDesarrollador.dao.IProductoDAO;
import com.cDesarrollador.model.Categoria;
import com.cDesarrollador.model.Producto;
import com.cDesarrollador.model.Proveedor;

@Transactional(readOnly = true)
public class ProductoService implements IProductoService  {
	
	IProductoDAO ProductoDAO;
	
	

	 @Transactional(readOnly = false)
	public void addProducto(Producto producto) {
	getProductoDAO().addProducto(producto);
		
	}

	 @Transactional(readOnly = false)
	public void updateProducto(Producto producto) {
		getProductoDAO().updateProducto(producto);
		
	}

	 @Transactional(readOnly = false)
	public void deleteProducto(Producto producto) {
		 getProductoDAO().deleteProducto(producto);
		
	}

	@Override
	public Producto getProductoById(int id) {
		// TODO Auto-generated method stub
		return 	 getProductoDAO().getProductoById(id);
	}

	@Override
	public List<Producto> getProductos() {
		// TODO Auto-generated method stub
		return 	 getProductoDAO().getProductos();
	}

	@Override
	public List<Producto> getProductoByCategoty(Categoria categoria) {
		// TODO Auto-generated method stub
		return getProductoDAO().getProductoByCategoty(categoria);
	}

	@Override
	public List<Producto> getProductoByProveedor(Proveedor proveedor) {
		// TODO Auto-generated method stub
		return getProductoDAO().getProductoByProveedor(proveedor);
	}

	public IProductoDAO getProductoDAO() {
		return ProductoDAO;
	}

	public void setProductoDAO(IProductoDAO productoDAO) {
		ProductoDAO = productoDAO;
	}

	




	
	

}
